package com;

import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.util.Properties;

import javax.mail.Address;
import javax.mail.BodyPart;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Multipart;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMultipart;

public class EmailUtil {
	
	 /**   
     * 以HTML格式发送邮件   
     * @param mailInfo 待发送的邮件信息   
	 * @throws UnsupportedEncodingException 
     */    
   public static boolean sendHtmlMail() throws UnsupportedEncodingException{    
     // 判断是否需要身份认证    
	   Email_Autherticator authenticator = null;   
     Properties pro = new Properties();   
     
       authenticator = new Email_Autherticator();   
       
       pro.put("mail.smtp.host", "smtp.126.com");
       pro.put("mail.smtp.auth", "true");
     // 根据邮件会话属性和密码验证器构造一个发送邮件的session    
     Session sendMailSession = Session.getDefaultInstance(pro,authenticator);    
     try {    
     // 根据session创建一个邮件消息    
     Message mailMessage = new MimeMessage(sendMailSession);    
     // 创建邮件发送者地址    
     Address from = new InternetAddress("testemailhehe@126.com","屈总");    
     // 设置邮件消息的发送者    
     mailMessage.setFrom(from);    
     // 创建邮件的接收者地址，并设置到邮件消息中    
     Address to = new InternetAddress("709418277@qq.com");    
     // Message.RecipientType.TO属性表示接收者的类型为TO    
     mailMessage.setRecipient(Message.RecipientType.TO,to);    
     // 设置邮件消息的主题    
     mailMessage.setSubject("屈总");    
     // 设置邮件消息发送的时间    
     mailMessage.setSentDate(new Date());    
     // MiniMultipart类是一个容器类，包含MimeBodyPart类型的对象    
     Multipart mainPart = new MimeMultipart();    
     // 创建一个包含HTML内容的MimeBodyPart    
     BodyPart html = new MimeBodyPart();    
     // 设置HTML内容    
     html.setContent("屈总,哥哥想你了", "text/html; charset=utf-8");    
     mainPart.addBodyPart(html);    
     // 将MiniMultipart对象设置为邮件内容    
     mailMessage.setContent(mainPart);    
     // 发送邮件    
     Transport.send(mailMessage);    
     return true;    
     } catch (MessagingException ex) {    
         ex.printStackTrace();    
     }
     return false;
   }    
	public static void main(String[] args) {
		
		try {
			for(int i=0;i<20;i++){
				EmailUtil.sendHtmlMail();
			}
		} catch (Exception e) {

		}
	}
}